#ifndef TANK_H_
#define TANK_H_

#include "../Widget.h"
#include "../Event.h"
#include "TankStatus.h"

#define PI 3.14159265

class Tank: public Widget {

private:

	std::string owner;

	int nextX;

	int nextY;

	bool goingForward;

	bool goingBackwards;

	bool turningLeft;

	bool turningRight;

	bool shooting;

	SDL_Surface* tankSurface;

	int angle;

	bool keyPressed;

protected:

	Tank();

public:

	Tank(int posX, int posY, Widget* parent, std::string owner,int angle = 0);

	virtual void handleEvent(Event event);

	virtual void resolve();

	virtual void showOn(SDL_Surface* surface);

	TankStatus getTankStatus();

	std::string getOwner();

	int getbulletX();
	int getbulletY();
	int getBulletAngle();
	bool isShooting();

	bool duenoesinstancialocal;

	virtual ~Tank();
};

#endif /* TANK_H_ */
